package cn.yunhe.dao;

import cn.yunhe.entity.Page;
import cn.yunhe.entity.Product;

import java.util.List;

public interface ProductDao {
    /**
     * 分页查询所有的商品
     * @return
     */
    List<Product> getAllproBypage(Page page);
    /**
     * 获取商品总数量
     * @return
     */
    int getProCount();
    /**
     * 根据Epid查单个
     * @param epid
     * @return
     */
    Product getById(int epid);
    /**
     * 根据Epid删除商品,删除商品信息
     * @param epid
     * @return
     */
    boolean delProByEpid(int epid);

    /**
     *
     * @param
     * @return
     */
    boolean getProByEpid(Product product);

    /**
     * 根据增加商品
     * @param epid
     * @return
     */
    boolean addProByEpid(int epid);

    /**
     * 模糊查询
     * @param
     * @return
     */
    List<Product> getAllByName(Page page);
    /**
     * 通过父类id查询所有子类下的商品信息
     * @param epcpartentid
     * @return
     */
    List<Product> getAllByParentid(int epcpartentid);

    /**
     * 根据价格查询特价商品
     * @param
     * @return
     */
    List<Product> getMinPrice();

    /**
     * 增加商品信息
     * @param product
     * @return
     */
    public Boolean createProduct(Product product);

    /**
     * 修改商品信息
     * @param product
     * @return
     */
    public  Boolean modifyProduct(Product product);

    /**
     *热卖商品
     * @return
     */
    List<Product> getSDtock();

    /**
     * 郭瀚钰新闻模块用
     * 根据子分类id获取商品信息
     * @return
     */
    List<Product> getProductByChildClassId(Page page);

    /**
     * 郭瀚钰新闻模块用
     * 根据子分类id获取商品信息
     * @return
     */
    Integer getProductByChildClassIdCount(Page page);
}
